// STL --- illustra l'uso di un vettore

#include <iostream>
#include <vector>
#include <cctype>
using namespace std;


int main()
{
	vector<char> v(10); // crea un vettore di lunghezza 10
	int i;

	// visualizza le dimensioni originali di v
	cout << "Dimensioni = " << v.size() << endl;

	// assegna un valore agli elementi di un vettore
	for(i=0; i<10; i++) v[i] = i + 'a';

	// visualizza il contenuto del vettore
		cout << "Contenuto =  ";
		for(i=0; i<v.size(); i++) cout << v[i] << " ";
		cout << "\n\n";

	cout << "Espansione del vettore\n";
	/* inserisce nuovi elementi alla fine del vettore,
	   il quale cresce in modo appropriato */
	for(i=0; i<10; i++) v.push_back(i+10+'a');

	// visualizza le attuali dimensioni di v
	cout << "Attuali dimensioni = " << v.size() << endl;

	// visualizza il contenuto del vettore
	cout << "Contenuto =\n";
	for(i=0; i<v.size(); i++) cout << v[i] << " ";
	cout << "\n\n";

	// cambia il contenuto del vettore
	for(i=0; i<v.size(); i++) v[i] = toupper(v[i]);
	cout << "Contenuto modificato = \n";
	for(i=0; i<v.size(); i++) cout << v[i] << " ";
	cout << endl;


	return 0;
}